package cn.zymall.user.service;

import cn.zymall.common.model.Collect;
import cn.zymall.common.model.Spu;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;


/**
 * @author : th
 * @ClassName: commodityGoodsService
 * @Description : 商品收藏接口
 * @date 2020年08月18日 20:19
 **/
public interface CommodityGoodsService {

    /**
     * @author：th
     * @Description：查询用户收藏的所有商品
     * @Param：用户ID
     * @return：List<Spu>
     **/
    PageInfo<Collect> findAll(@Param("id") int id,@Param("page")int page,@Param("rows") int rows) ;

    /**
     * @author：th
     * @Description：模糊查询收藏商品
     * @Param：用户ID，商品名称
     * @return：List<Spu>
     **/
    PageInfo<Collect> collectFuzzy(int id,String value,int page,int rows);


    /**
     * @author：th
     * @Description：根据id查询收藏的商品
     * @Param：用户id，商品id
     * @return：Collect
     **/
    Collect collectId(@Param("id") int id,@Param("cid") int cid);



    /**
     * @author：th
     * @Description：修改收藏的商品状态
     * @Param：用户ID，商品ID
     * @return：Boolean
     **/
    boolean collectUpdate(@Param("id") int id,@Param("cid") int cid);


    /**
     * @author：th
     * @Description：查询收藏表，有就修改，没有就添加
     * @Param：Collect
     * @return：boolean
     **/
    boolean collectSave(Collect collect);



    /**
     * @author：th
     * @Description：商品收藏删除
     * @Param：用户id，list
     * @return：Boolean
     **/
    boolean collectRemove(@Param("id")int id,@Param("list") List list);

    /**
     * 修改
     * @param collect
     * @return
     */
    public boolean updateById(Collect collect);

    /**
     * 删除
     * @param collect
     * @return
     */
    public boolean deleteById(Collect collect);

}
